package main

import (
	"fmt"
	"net/http"
	"strings"
	"log"
	"time"
)

//func mockWeChat(w http.ResponseWriter, r *http.Request) {
//
//}
//
//func weChat(w http.ResponseWriter, r *http.Request) {
//
//	var respMessage string
//
//	// 默认返回的文本消息内容
//	respContent := "请求处理异常，请稍候尝试！"
//
//	textMessage := Message(r)
//
//	switch textMessage.MsgType {
//	case "text":respContent = "您发送的是文本消息！"
//
//	}
//
//	//	// 文本消息
//	//	if (msgType.equals(MessageUtil.REQ_MESSAGE_TYPE_TEXT)) {
//	//
//	//	}
//	//
//	//// 图片消息
//	//else if (msgType.equals(MessageUtil.REQ_MESSAGE_TYPE_IMAGE)) {
//	//respContent = "您发送的是图片消息！";
//	//}
//	//// 地理位置消息
//	//else if (msgType.equals(MessageUtil.REQ_MESSAGE_TYPE_LOCATION)) {
//	//respContent = "您发送的是地理位置消息！";
//	//}
//	//// 链接消息
//	//else if (msgType.equals(MessageUtil.REQ_MESSAGE_TYPE_LINK)) {
//	//respContent = "您发送的是链接消息！";
//	//}
//	//// 音频消息
//	//else if (msgType.equals(MessageUtil.REQ_MESSAGE_TYPE_VOICE)) {
//	//respContent = "您发送的是音频消息！";
//	//}
//	//// 事件推送
//	//else if (msgType.equals(MessageUtil.REQ_MESSAGE_TYPE_EVENT)) {
//	//// 事件类型
//	//String eventType = requestMap.get("Event");
//	//// 订阅
//	//if (eventType.equals(MessageUtil.EVENT_TYPE_SUBSCRIBE)) {
//	//respContent = "谢谢您的关注！";
//	//}
//	//// 取消订阅
//	//else if (eventType.equals(MessageUtil.EVENT_TYPE_UNSUBSCRIBE)) {
//	//// TODO 取消订阅后用户再收不到公众号发送的消息，因此不需要回复消息
//	//}
//	//// 自定义菜单点击事件
//	//else if (eventType.equals(MessageUtil.EVENT_TYPE_CLICK)) {
//	//// TODO 自定义菜单权没有开放，暂不处理该类消息
//	//}
//	//}
//
//	//textMessage.setContent(respContent);
//	//respMessage = MessageUtil.textMessageToXml(textMessage);
//
//
//	Fetch("")
//
//	return respMessage;
//}

func main() {

	//http.HandleFunc("/wechat", weChat)

	http.HandleFunc("/hello", hello)
	err := http.ListenAndServe(":3149", nil)
	if err != nil {
		log.Fatal("start server failed:", err)
	}
}

func hello(w http.ResponseWriter, r *http.Request) {
	fmt.Println(r.Method)
	r.ParseForm() //解析参数，默认是不会解析的
	fmt.Println(r.Form) //这些信息是输出到服务器端的打印信息
	fmt.Println("path", r.URL.Path)
	fmt.Println("scheme", r.URL.Scheme)
	for k, v := range r.Form {
		fmt.Println("key:", k)
		fmt.Println("val:", strings.Join(v, ""))
	}
	fmt.Fprintf(w, "Hello GO!",time.Now())
}